﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Cotizav.CONEXION;

namespace Cotizav.PRESENTACION.Familia
{
    public partial class IUModelo : UserControl
    {
        CtrlModelo ctModelo;
        string idSelectedParentNode;
        
        public IUModelo()
        {
            InitializeComponent();
            ctModelo = new CtrlModelo();
        }

        internal void mostrarDatos(string idSelectedNode, string idParentSelectedNode)
        {
            MODELO mod = ctModelo.getModelo(idSelectedNode);
            idSelectedParentNode = idParentSelectedNode;
            txtModelo.Text = mod.nombreModelo;
            gbInformacionBasica.Tag = idSelectedNode;
        }

        private void actualizarArbolFamilias()
        {
            PanelFamilia panfamilia = this.ParentForm as PanelFamilia;
            panfamilia.loadTreeFamilia();
        }

        private void btnCambiar_Click(object sender, EventArgs e)
        {
            if (gbInformacionBasica.Tag != null)
            {
                if (!string.IsNullOrWhiteSpace(txtModelo.Text))
                {
                    if (!ctModelo.verificarNombreModelo(txtModelo.Text, idSelectedParentNode))
                    {
                        MODELO m = new MODELO()
                        {
                            nombreModelo = txtModelo.Text
                        };

                        bool result = ctModelo.actualizarModelo(gbInformacionBasica.Tag.ToString(), m);

                        if (result)
                        {
                            MessageBox.Show("Nombre de modelo modificado", "Cotizav", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                            actualizarArbolFamilias();
                            txtModelo.ResetText();
                        }
                    }
                    else
                    {
                        MessageBox.Show("El nombre de modelo ya se encuentra registrado", "Cotizav", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
                        txtModelo.ResetText();
                    }
                }
                else
                {
                    MessageBox.Show("Campo de modelo se encuentra vacío", "Cotizav", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
                } 
            }
        }
    }
}
